Archive/tree validation fixtures
Extract archive-fixtures.zip into a fresh temporary directory. Compile tools/native-archive-fixture-smoke.bas and link tree.lib plus archive.lib; pass the extracted directory as its first argument. The smoke test edits several fixture ZIPs, so use a fresh extraction for every run.
Compile tools/native-tree-smoke.bas with the same libraries and pass a separate empty temporary directory, including spaces in its path.
On Linux, archive.bas normally uses system libarchive. PHLEGM_TEST_WINDOWS_ARCHIVE=1 selects the identical native Windows ZIP/DEFLATE codec with only the OS file-replacement/PID functions adapted for Linux validation. This does not test Windows filesystem APIs or replace Windows runtime testing. The flag is for diagnostics only; normal Windows builds select their native backend automatically.
The Windows codec has no external archive DLL or subprocess dependency.

Compile tools/native-media-archive-smoke.bas with the same libraries and pass the extracted fixture directory to verify both legacy direct and recursive media listing/extraction paths.
